Business Intelligence (BI) generally refers to software tools used to improve business enterprise decision-making. These tools are commonly applied to financial, human resource, marketing, sales, customer and supplier analyses. More specifically, these tools can include: reporting and analysis tools to present information, content delivery infrastructure systems for delivery and management of reports and analytics, and data warehousing systems for cleansing and consolidating information from disparate sources. Business Intelligence tools work with data management systems, such as relational databases or On Line Analytic Processing (OLAP) systems used to collect, store, and manage raw data.
In recent years, BI tools have permeated business information systems to the point where the reliability, scalability, and flexibility of BI tools directly impact the operational efficiency of enterprise business processes. Business users expect quick access to a wide variety of customized BI tools that provide a rich feature set. This creates a need for local BI tools that are executed against local data sources. This leads to users demanding local BI systems. These local BI systems can evolve independently, creating tool and data versioning issues. Therefore. there is a need to make sharing and distribution of BI tools easier. For example, it is desirable to minimize setup time for BI services or to port servers between sites.
A server is an application program that provides a service to a client. A server application can run on the same computer as the client application using it; alternately, a client can connect through a computer network. A server computer is a computer system that has been designated for running a specific server application or applications.
With known BI servers, the information used to define a server is stored at the server computer that the server is deployed on. The information defines, configures and runs the server. The capabilities of the server are known to it and those that query it. Therefore, a client looking for a particular service typically queries all servers in the BI system.
There exist BI and reporting tools that are implemented in a cluster framework. Clustering can offer greater scalability by providing a collection of interconnected servers deployed as a single, unified computing resource. Users of the BI system access, for example, a server cluster, rather than a single management server machine within the cluster framework. Because each server within a server cluster remains, effectively, anonymous and interchangeable from a client's perspective, the methodology creates the illusion of a single system, while servicing the client needs with the power of distributed processing.
Data and metadata are often stored as objects. In known BI systems there are many different component objects, e.g., reports, files, file folder, users, user groups, schedule objects, data source objects, executable instructions defining a BI tool, and the like. Knowledge about which component objects are related is of importance to the system. This knowledge must be updated as both relationships and component objects are added, modified, or deleted. These requirements create a data structure problem. Some BI systems address this problem by maintaining a set of objects that contain metadata (i.e., data about data) on the component objects. These information objects can be used to models the relationships between the component objects.
In view of the foregoing, it would be highly advantageous to provide improved cluster technology. In particular, it would be highly advantageous to provide an improved cluster technology for the effective deployment of servers.